package com.personal.mapper;

import com.personal.pojo.TApply;
import com.personal.pojo.TApplyExample;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface TApplyMapper {
    int countByExample(TApplyExample example);

    //删除，放入删除列表
    int deleteBySt0(Integer applyid);

    int deleteByPrimaryKey(Integer applyid);

    int insert(TApply record);

    //插入报名信息
    int insertSelective(TApply record);

    //查询所有课程
    List<TApply> selectAll();

    //根据id查报名信息，修改回显
    TApply selectByPrimaryKey(Integer applyid);

    int updateByExampleSelective(@Param("record") TApply record, @Param("example") TApplyExample example);

    int updateByExample(@Param("record") TApply record, @Param("example") TApplyExample example);

    int updateByPrimaryKeySelective(TApply record);

    int updateByPrimaryKey(TApply record);
//    根据根据applymem，applycourse查询
    TApply selectByMemCourse(@Param("applymem")Integer applymem, @Param("applycourse")Integer applycourse);
//    根据用户id来查用户所有报名的课程，个人中心展示
    List selectAllCourse(Integer memid);
//    根据用户id来查用户所有报名的课程，展示会员课程表
    List selectAllCourseNoEnd(Integer memid);
    //多条件查询
    List selectByClause(@Param("memname")String memname, @Param("coursename")String coursename);
    //admin插入报名信息，根据用户名和课程名插入
    int insertNew(@Param("memname")String memname, @Param("coursename")String coursename);
    //统计课程报名人数
    int countMem(Integer courseid);
    //课程结束后，将报名信息置为0
    int delApply(@Param("courses")List courses);
}